package com.example.demo.service;

import com.example.demo.model.dto.PaperSubmissionDTO;
import com.example.demo.model.entity.achievement.ResearchPaper;
import com.example.demo.model.entity.audit.AuditRecord;

import javax.validation.Valid;
import java.util.List;

public interface PaperService {
    ResearchPaper submitPaper(@Valid PaperSubmissionDTO submissionDTO);
    ResearchPaper updateStudentPaper(Long paperId, @Valid PaperSubmissionDTO updateDTO);
    void deleteStudentPaper(Long paperId);
    List<ResearchPaper> getStudentPapers();
    ResearchPaper getStudentPaperById(Long paperId);
    List<ResearchPaper> getPendingReviewPapers();

    /**
     * 获取学生论文的审核记录
     * @param paperId 论文ID
     * @return 审核记录列表
     */
    List<AuditRecord> getPaperAuditRecords(Long paperId);
}